/*
    Copyright (c) 2009 Jay Graham

    Distributed under the MIT License (see accompanying file LICENSE_1_0_0.txt
    or http://www.opensource.org/licenses/mit-license.php)
*/

/**********************************************************************************************************************/

#ifndef PROTOX_OM_RPR_EVENT_IDENTIFIER_STRUCT_HPP
#define PROTOX_OM_RPR_EVENT_IDENTIFIER_STRUCT_HPP

/**********************************************************************************************************************/

#include <boost/mpl/vector.hpp>

#include <protox/hla_13/complex_type.hpp>
#include <protox/hla_13/basic_data_representation_table.hpp>

#include "rti_object_id_struct.hpp"

/**********************************************************************************************************************/

namespace protox { namespace om { namespace rpr {

/**********************************************************************************************************************/

using namespace boost;
using namespace protox;
using namespace protox::dtl;
using namespace protox::hla_13;

/**********************************************************************************************************************/

//      +-----------------------+--------------------------------------------------------------+----------------------+
//      |                       | Field                                                        |                      |
//      | Record Name           +-------------------------+------------------------------------+ Encoding             |
//      |                       | Name                    | Type                               |                      |
//      +-----------------------+-------------------------+------------------------------------+----------------------+
namespace EventIdentifierStruct {
                           struct EventCount              : field< HLA13unsigned_short     > {};
                           struct IssuingObjectIdentifier : field< RTIObjectIdStruct::type > {};
//      +-----------------------+-------------------------+------------------------------------+
                                                                                   struct type : hla_13::complex_type < mpl::vector< EventCount, IssuingObjectIdentifier > > {};}
//      +--------------------------------------------------------------------------------------+----------------------+

/**********************************************************************************************************************/

}}}

/**********************************************************************************************************************/

#endif

/**********************************************************************************************************************/
